-
Notifications
You must be signed in to change notification settings - Fork 565
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revive Fixes for Boiler: IFF Gas and Cause Data #3577
Revive Fixes for Boiler: IFF Gas and Cause Data #3577
Conversation
This PR has been inactive for long enough to be automatically marked as stale. This means it is at risk of being auto closed in ~ 7 days, please address any outstanding review items and ensure your PR is finished, if these are all true and you are auto-staled anyway, you need to actively ask maintainers if your PR will be merged. Once you have done any of the previous actions then you should request a maintainer remove the stale label on your PR, to reset the stale timer. If you feel no maintainer will respond in that time, you may wish to close this PR youself, while you seek maintainer comment, as you will then be able to reopen the PR yourself |
code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_powers.dm
Outdated
Show resolved
Hide resolved
code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_powers.dm
Outdated
Show resolved
Hide resolved
..(thing) | ||
cause_data = create_cause_data("neurotoxic gas") | ||
/datum/effects/neurotoxin/New(atom/thing, mob/from = null) | ||
..(thing, from, effect_name) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not entirely sure why this is preferable to
..(thing, from, effect_name) | |
. = ..() | |
cause_data = create_cause_data(effect_name) |
generally messing with the ..() signature can result in some particularly weird issues - but if this is fixing an issue i'm overlooking lmk
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The parent constructor takes four arguments, this constructor is taking two: but in the case of this we want the third argument to always be effect_name and we don't care about the fourth argument.
Also the cause_data should contain the mob from.
Ultimately changing this will mean we waste the construction of cause_data in the parent because we need to redo it if we don't provide those three arguments to the parent constructor.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Currently reverted this change since I think its better to reduce the amount of times cause_data is constructed.
code/modules/mob/living/carbon/xenomorph/abilities/boiler/boiler_powers.dm
Outdated
Show resolved
Hide resolved
Co-authored-by: harryob <[email protected]>
This PR has been inactive for long enough to be automatically marked as stale. This means it is at risk of being auto closed in ~ 7 days, please address any outstanding review items and ensure your PR is finished, if these are all true and you are auto-staled anyway, you need to actively ask maintainers if your PR will be merged. Once you have done any of the previous actions then you should request a maintainer remove the stale label on your PR, to reset the stale timer. If you feel no maintainer will respond in that time, you may wish to close this PR youself, while you seek maintainer comment, as you will then be able to reopen the PR yourself |
About the pull request
This PR revives #3222 since it was basically fully complete except for a few lingering cause data issues and didn't yet address boiler gibbing gas. See linked PR or changelog for more details. See Testing Photographs and Procedure for some screenshots.
The core change in this PR is that obj/effect/particle_effect/smoke/xeno_burn/Initialize now looks at the faction of the xeno that caused the smoke in the cause_data (resolve_mob would also work except for boiler gibbing smoke) to determine what faction the new smoke should be.
Explain why it's good for the game
Boilers are basically unusable currently if they aren't the normal hive. The IFF fixes to the gas allow this boiler to not hurt their own hive with their abilities.
Testing Photographs and Procedure
Screenshots & Videos
Some cause data examples:
IFF'd acid gas:
Boiler gibbing gas is now IFF'd too:
Changelog
🆑 TeDGamer Drathek
fix: Boilers from other hives generate proper colored IFFed gas
fix: Fixes some death causes with boiler acid gas (for bombard, shroud, and gibbing), neurotoxin gas/stabs, acid shotgun, and xeno spits
balance: Neurotoxin stops processing only in dead mobs
/:cl: